-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RCAL-977 - Version datamodels #445
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #445 +/- ##
==========================================
- Coverage 97.56% 97.35% -0.21%
==========================================
Files 30 36 +6
Lines 2788 3252 +464
==========================================
+ Hits 2720 3166 +446
- Misses 68 86 +18 ☔ View full report in Codecov by Sentry. |
Is this something you'd want to present on a Thursday tag up? |
Good idea! Let's do it. |
e187307
to
d3d5bbf
Compare
Resolves RCAL-977
This PR (with the corresponding RAD changes: spacetelescope/rad#528) adds support for versioning DataModels. The approach is similar to #305 where with this PR the link between a specific tag and Node class and removed. Instead Node classes have a tag "pattern" (wildcard) which can match one of multiple tag versions. New Node instances use the latest tag version except for when they are read from an ASDF file (where the version read from the file is used).
Regression tests all pass: https://github.com/spacetelescope/RegressionTests/actions/runs/12611441068
Once this PR (and spacetelescope/rad#528) are merged changes to schema can now be made in a way that retains opening existing files. To provide an example (and a toy change for reviewers to test):
braingram/rad#1
braingram#1
add a new entry to
cal_step
namedtwo_step
. Installing these branches allows creating and writing files with the newcal_step-2.0.0
node but retains reading (and rewriting) ofcal_step-1.0.0
nodes.Tasks
roman_datamodels
tests.docs/
page.no-changelog-entry-needed
.)changes/
:echo "changed something" > changes/<PR#>.<changetype>.rst
(see below for change types).romancal
regression test (https://github.com/spacetelescope/RegressionTests/actions/workflows/romancal.yml) with this branch installed ("git+https://github.com/<fork>/rad@<branch>"
).News fragment change types:
changes/<PR#>.feature.rst
: new featurechanges/<PR#>.bugfix.rst
: fixes an issuechanges/<PR#>.doc.rst
: documentation changechanges/<PR#>.removal.rst
: deprecation or removal of public APIchanges/<PR#>.misc.rst
: infrastructure or miscellaneous change